#ifndef QZEROMENUBAR_H
#define QZEROMENUBAR_H

#include <vector>
#include "qzeroicon.h"

enum QZeroMenuBarType
{
  QZeroMenuBarTypeHorizontal = 1,
  QZeroMenuBarTypeVertical = 2
};

typedef std::vector<QZeroIcon> MenuBarIcons;

class QZeroMenuBar
{
public:
  QZeroMenuBar();
  ~QZeroMenuBar();

  void setType(const QZeroMenuBarType& type) { type_ = type; }

  void addIcon(const QZeroIconProperties& prop);

  void draw(unsigned int width, unsigned int height, int z);

  void mouselocation(int x, int y);

  std::string action(int x, int y);

  void press(int x, int y);

  void release(int x, int y);

  bool mouseInsideMenuBar(int x, int y);

  void setAlpha(float alpha);

  void setHidden(bool hidden)
  {
    hidden_ = hidden;
  }
  bool hidden(void)
  {
    return(hidden_);
  }

private:

  QZeroMenuBarType type_;
  MenuBarIcons icons_;

  int xinit_, yinit_, xsize_, ysize_, spacing_;
  bool hidden_;

};

#endif // QZEROMENUBAR_H
